Amazon Redshift 「Serverless」 と 「Provisioned」 どちらを選択すれば良いか教えてください
困っていること
分析マネージドサービスである Amazon Redshift の導入を検討しています。
Amazon Redshift を利用する際に 「Serverless」 と 「Provisioned (ノードタイプ: RA3 又は DC2)」 の選択が可能ですが、どちらを選択して利用を開始すれば良いか教えてください。
どう対応すればいいの?
前提として、所属する企業様のワークロードなどにより、どちらが適しているか一概に言えないため回答は困難です。
以下ドキュメントを参考に、各違いについて認識されてからワークロードに合わせてご選択ください。
一方で、AWS では参考情報 (P14) 記載の選定フロー通り
- 先ずはクラスターまたはノードという概念がなく運用がシンプルな Amazon Redshift Serverless の検討をお勧めしています。
補足:ワークロードの処理に必要な適切なリソースを自動的にプロビジョニングするため、ノードタイプを選択する必要はありません。
- 次に、定常的なワークロードでコスト最適化したい場合は、Amazon Redshift Provisioned のノードタイプ RA3 をお勧めしています。
補足:コンピューティングリソースとストレージリソースが分離されているため、柔軟な構成を実現することが可能です。また、後述する DC2 と比較すると機能が多い点があります。RA3 では、パフォーマンス要件に基づいてノードの数を選択し、使用したマネージドストレージに対してのみ料金が発生します。日々処理するデータ量を基に、RA3 クラスターのサイズを選択してください。
また、データ量の増大が予想される場合は、RA3 ノードのご利用をお勧めします。
- そして最後に、データがそれほど多くなく、性能を重視する場合はローカル SSD ストレージを搭載した Amazon Redshift Provisioned のノードタイプ DC2 が候補となります。
補足:考慮する点として、必要なノード数はデータサイズとパフォーマンス要件に基づいて選択します。DC2 ノードは高いパフォーマンスを引き出すためローカルにデータを格納し、データの増加に従って、さらに多くのコンピューティングノードを追加する必要があります。未圧縮で 1 TB 未満のデータセットでは、最も低い価格で最良のパフォーマンスを得るため、DC2 ノードタイプの利用を推奨します。
なお、上記について検討するにあたり、実機検証の結果を基に見直しをすることをお勧めします。
※ 参考情報
移行について
Provisioned で利用していたものの、運用がシンプルな Serverless へ移行されたい場合も可能です。
ドキュメント又は、弊社ブログを参考にご対応ください。
参考資料
- Amazon Redshift(高速、シンプル、費用対効果の高いデータウェアハウス)| AWS
- Amazon Redshift サーバーレスと Amazon Redshift のプロビジョニングされたデータウェアハウスの比較 - Amazon Redshift
- Amazon Redshift 運用管理AWS Black Belt Online Seminar
- プロビジョニングされたクラスターを Amazon Redshift Serverless へ移行する - Amazon Redshift
- Amazon Redshift Serverless Provisioned Clusterからのマイグレーション手順 | DevelopersIO